package ru.payment.wm.impl.response;

import ru.payment.wm.Operation;
import ru.payment.wm.OperationType;

import java.util.Date;

/**
 *
 * User: sergey
 * Date: 14.04.2009
 * Time: 21:57:26
 *
 */
public class OperationImpl implements Operation {

  private String wmOperationId;
  private String wmTsId;

  private long transactionId;
  private String purseSrc;
  private String purseDest;
  private float amount;
  private float comission;
  private OperationType type;
  private int period;
  private long wmInvoiceId;
  private long orderId;
  private String description;
  private Date createDate;
  private Date updateDate;
  private String correspondentWmId;
  private float rest;

  public String getWmOperationId() {
    return wmOperationId;
  }

  public void setWmOperationId(String wmOperationId) {
    this.wmOperationId = wmOperationId;
  }

  public String getWmTsId() {
    return wmTsId;
  }

  public void setWmTsId(String wmTsId) {
    this.wmTsId = wmTsId;
  }

  public long getTransactionId() {
    return transactionId;
  }

  public void setTransactionId(long transactionId) {
    this.transactionId = transactionId;
  }

  public String getPurseSrc() {
    return purseSrc;
  }

  public void setPurseSrc(String purseSrc) {
    this.purseSrc = purseSrc;
  }

  public String getPurseDest() {
    return purseDest;
  }

  public void setPurseDest(String purseDest) {
    this.purseDest = purseDest;
  }

  public float getAmount() {
    return amount;
  }

  public void setAmount(float amount) {
    this.amount = amount;
  }

  public float getComission() {
    return comission;
  }

  public void setComission(float comission) {
    this.comission = comission;
  }

  public OperationType getType() {
    return type;
  }

  public void setType(OperationType type) {
    this.type = type;
  }

  public int getPeriod() {
    return period;
  }

  public void setPeriod(int period) {
    this.period = period;
  }

  public long getWmInvoiceId() {
    return wmInvoiceId;
  }

  public void setWmInvoiceId(long wmInvoiceId) {
    this.wmInvoiceId = wmInvoiceId;
  }

  public long getOrderId() {
    return orderId;
  }

  public void setOrderId(long orderId) {
    this.orderId = orderId;
  }

  public String getDescription() {
    return description;
  }

  public void setDescription(String description) {
    this.description = description;
  }

  public Date getCreateDate() {
    return createDate;
  }

  public void setCreateDate(Date createDate) {
    this.createDate = createDate;
  }

  public Date getUpdateDate() {
    return updateDate;
  }

  public void setUpdateDate(Date updateDate) {
    this.updateDate = updateDate;
  }

  public String getCorrespondentWmId() {
    return correspondentWmId;
  }

  public void setCorrespondentWmId(String correspondentWmId) {
    this.correspondentWmId = correspondentWmId;
  }

  public float getRest() {
    return rest;
  }

  public void setRest(float rest) {
    this.rest = rest;
  }

  @Override
  public String toString() {
    return
    "wmOperationId: "+wmOperationId+"\n"+
    "wmTsId: "+wmTsId+"\n"+

    "transactionId: "+transactionId+"\n"+
    "purseSrc: "+purseSrc+"\n"+
    "purseDest: "+purseDest+"\n"+
    "amount: "+amount+"\n"+
    "comission: "+comission+"\n"+
    "type: "+type.getValue()+", "+type.getDescription()+"\n"+
    "period: "+period+"\n"+
    "wmInvoiceId: "+wmInvoiceId+"\n"+
    "orderId: "+orderId+"\n"+
    "description: "+description+"\n"+
    "createDate: "+createDate+"\n"+
    "updateDate: "+updateDate+"\n"+
    "correspondentWmId: "+correspondentWmId+"\n"+
    "rest: "+rest;
  }

}
